package main

import (
	"fmt"
	"strings"
)

/*
	某个产品的RESTful API集合部署在服务器集群的多个节点上，近期对客户端访问日志进行了采集，需要统计各个API的访问频次，根据热点信息在服务器节点之间做负载均衡，现在需要实现热点信息统计查询功能。
	RESTful API是由多个层级构成，层级之间使用 / 连接，如 /A/B/C/D 这个地址，A属于第一级，B属于第二级，C属于第三级，D属于第四级。
	现在负载均衡模块需要知道给定层级上某个名字出现的频次，未出现过用0表示，实现这个功能。

*/

func main() {
	n := 0
	s := ""
	fmt.Print("请输入日志数量：")
	fmt.Scanf("%d", &n)
	res := make([]map[string]int, 10)
	for i := 0; i < 10; i++ {
		res[i] = make(map[string]int)
	}
	fmt.Printf("请输入%d条url换行符分割\n", n)
	for i := 0; i < n; i++ {
		fmt.Scanf("%s", &s)
		splitStr := strings.Split(s, "/")
		for i2, s2 := range splitStr {
			// i2是层级，s2是字符串
			if _, ok := res[i2][s2]; !ok {
				res[i2][s2] = 1
			} else {
				res[i2][s2] = res[i2][s2] + 1
			}
		}
	}
	key := ""
	level := 0
	fmt.Print("请输入要查询的层级和关键字：")
	fmt.Scanf("%d %s", &level, &key)
	fmt.Println(res[level][key])
}
